Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.googlenative.apigee.v1.kotlin
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.googlenative.apigee.v1.HostSecurityReportArgs.builder
import com.pulumi.googlenative.apigee.v1.kotlin.inputs.GoogleCloudApigeeV1SecurityReportQueryMetricArgs
import com.pulumi.googlenative.apigee.v1.kotlin.inputs.GoogleCloudApigeeV1SecurityReportQueryMetricArgsBuilder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Any
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Submit a query at host level to be processed in the background. If the submission of the query succeeds, the API returns a 201 status and an ID that refer to the query. In addition to the HTTP status 201, the `state` of "enqueued" means that the request succeeded.
* Auto-naming is currently not supported for this resource.
* Note - this resource's API doesn't support deletion. When deleted, the resource will persist
* on Google Cloud even though it will be deleted from Pulumi state.
* @property csvDelimiter Delimiter used in the CSV file, if `outputFormat` is set to `csv`. Defaults to the `,` (comma) character. Supported delimiter characters include comma (`,`), pipe (`|`), and tab (`\t`).
* @property dimensions A list of dimensions. https://docs.apigee.com/api-platform/analytics/analytics-reference#dimensions
* @property displayName Security Report display name which users can specify.
* @property envgroupHostname Hostname needs to be specified if query intends to run at host level. This field is only allowed when query is submitted by CreateHostSecurityReport where analytics data will be grouped by organization and hostname.
* @property filter Boolean expression that can be used to filter data. Filter expressions can be combined using AND/OR terms and should be fully parenthesized to avoid ambiguity. See Analytics metrics, dimensions, and filters reference https://docs.apigee.com/api-platform/analytics/analytics-reference for more information on the fields available to filter on. For more information on the tokens that you use to build filter expressions, see Filter expression syntax. https://docs.apigee.com/api-platform/analytics/asynch-reports-api#filter-expression-syntax
* @property groupByTimeUnit Time unit used to group the result set. Valid values include: second, minute, hour, day, week, or month. If a query includes groupByTimeUnit, then the result is an aggregation based on the specified time unit and the resultant timestamp does not include milliseconds precision. If a query omits groupByTimeUnit, then the resultant timestamp includes milliseconds precision.
* @property limit Maximum number of rows that can be returned in the result.
* @property metrics A list of Metrics.
* @property mimeType Valid values include: `csv` or `json`. Defaults to `json`. Note: Configure the delimiter for CSV output using the csvDelimiter property.
* @property organizationId
* @property reportDefinitionId Report Definition ID.
* @property timeRange Time range for the query. Can use the following predefined strings to specify the time range: `last60minutes` `last24hours` `last7days` Or, specify the timeRange as a structure describing start and end timestamps in the ISO format: yyyy-mm-ddThh:mm:ssZ. Example: "timeRange": { "start": "2018-07-29T00:13:00Z", "end": "2018-08-01T00:18:00Z" }
*/
public data class HostSecurityReportArgs(
public val csvDelimiter: Output? = null,
public val dimensions: Output>? = null,
public val displayName: Output? = null,
public val envgroupHostname: Output? = null,
public val filter: Output? = null,
public val groupByTimeUnit: Output? = null,
public val limit: Output? = null,
public val metrics: Output>? = null,
public val mimeType: Output? = null,
public val organizationId: Output? = null,
public val reportDefinitionId: Output? = null,
public val timeRange: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.googlenative.apigee.v1.HostSecurityReportArgs =
com.pulumi.googlenative.apigee.v1.HostSecurityReportArgs.builder()
.csvDelimiter(csvDelimiter?.applyValue({ args0 -> args0 }))
.dimensions(dimensions?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.displayName(displayName?.applyValue({ args0 -> args0 }))
.envgroupHostname(envgroupHostname?.applyValue({ args0 -> args0 }))
.filter(filter?.applyValue({ args0 -> args0 }))
.groupByTimeUnit(groupByTimeUnit?.applyValue({ args0 -> args0 }))
.limit(limit?.applyValue({ args0 -> args0 }))
.metrics(
metrics?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.mimeType(mimeType?.applyValue({ args0 -> args0 }))
.organizationId(organizationId?.applyValue({ args0 -> args0 }))
.reportDefinitionId(reportDefinitionId?.applyValue({ args0 -> args0 }))
.timeRange(timeRange?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [HostSecurityReportArgs].
*/
@PulumiTagMarker
public class HostSecurityReportArgsBuilder internal constructor() {
private var csvDelimiter: Output? = null
private var dimensions: Output>? = null
private var displayName: Output? = null
private var envgroupHostname: Output? = null
private var filter: Output? = null
private var groupByTimeUnit: Output? = null
private var limit: Output? = null
private var metrics: Output>? = null
private var mimeType: Output? = null
private var organizationId: Output? = null
private var reportDefinitionId: Output? = null
private var timeRange: Output? = null
/**
* @param value Delimiter used in the CSV file, if `outputFormat` is set to `csv`. Defaults to the `,` (comma) character. Supported delimiter characters include comma (`,`), pipe (`|`), and tab (`\t`).
*/
@JvmName("eqnkfnfdhrqymqbn")
public suspend fun csvDelimiter(`value`: Output) {
this.csvDelimiter = value
}
/**
* @param value A list of dimensions. https://docs.apigee.com/api-platform/analytics/analytics-reference#dimensions
*/
@JvmName("muokxoodmybltklw")
public suspend fun dimensions(`value`: Output>) {
this.dimensions = value
}
@JvmName("qywbghvdrrnsyqyr")
public suspend fun dimensions(vararg values: Output) {
this.dimensions = Output.all(values.asList())
}
/**
* @param values A list of dimensions. https://docs.apigee.com/api-platform/analytics/analytics-reference#dimensions
*/
@JvmName("bukofybqykmplfjv")
public suspend fun dimensions(values: List